|
If you can't view the Datasheet, Please click here to try to view without PDF Reader . |
|
Datasheet File OCR Text: |
TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX PM8315 - TEMUX DEVICE DRIVER HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MULTIPLEXER DEVICE DRIVER ERRATA ISSUE 1: OCTOBER 2000 PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX PUBLIC REVISION HISTORY Issue No. 1 Issue Date October 2000 Details of Change Document created. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX CONTENTS 1 ISSUE 1 DEVICE DRIVER ERRATA................................................................................. 1 1.1 2 3 DRIVER IDENTIFICATION................................................................................... 1 TEMUX DEVICE DRIVER FUNCTIONAL DEFICIENCIES OVERVIEW .......................... 2 TEMUX DEVICE DRIVER FUNCTIONAL DEFICIENCY DETAILS .................................. 4 3.1 MEMORY.............................................................................................................. 4 3.1.1 MEMORY CORRUPTION WHEN PASSING A NULL PTR TO TEMUXDPR API...................................................................................... 4 3.2 DECLARATIONS.................................................................................................. 5 3.2.1 3.2.2 3.2.3 FUNCTION PROTOTYPE SYSTEMUXDPRTASK ................................. 5 FUNCTION PROTOTYPE TEMUXLOOPMX23 ..................................... 5 STMX_DPV STRUCT ............................................................................. 6 3.3 ADDED FUNCTIONS ........................................................................................... 7 3.3.1 TEMUXSBITRIBRESET .......................................................................... 7 3.4 TEMUX DEVICE DRIVER ISR ............................................................................. 7 3.4.1 3.4.2 INCORRECT INDEXING OF ISV............................................................ 7 IMPROPER NOTIFICATION OF SIGX COSS INTERRUPTS ................ 8 3.5 TEMUXDPR ......................................................................................................... 9 3.5.1 ISV BUFFER RECEIVED BUT NEVER FREED ..................................... 9 PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE i TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX 1 ISSUE 1 DEVICE DRIVER ERRATA This document is the errata notice for beta-1.0 release of the TEMUX (PM8315PI) device driver. The beta-1.0 release of the TEMUX device driver and issue 1 errata supersede all prior editions and versions of the device driver. 1.1 DRIVER IDENTIFICATION The information in this document applies to the beta-1.0 release of the PM8315 TEMUX device driver only. The driver revision number is indicated in the comment section of each file under Modification History. The complete beta-1.0 release of the TEMUX driver includes the following files: Table 1 - TEMUX Device Driver Files Directory source Filename tmx_api.c tmx_app.c tmx_diag.c tmx_dpr.c tmx_hw.c tmx_isr.c tmx_rtos.c tmx_stat.c tmx_util.c headers temux.h tmx_api.h tmx_app.h tmx_dev.h tmx_dpr.h tmx_hw.h tmx_isr.h File Version 13 4 6 12 9 12 8 5 7 7 13 3 11 6 9 7 PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 1 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX Directory headers Filename tmx_mdb.h tmx_rtos.h tmx_util.h File Version 9 9 4 3 3 examples app.c1 app.h1 Notes: 1. app.c, app.h files contain example callback function implementation and example code. 2 TEMUX DEVICE DRIVER FUNCTIONAL DEFICIENCIES OVERVIEW This section outlines the known functional deficiencies of the beta-1.0 release of the PM8513 TEMUX device driver. The errata are explained in more detail in section 3 of this document. Table 2 # 3.1 3.1.1 3.2 3.2.1 3.2.2 3.2.3 3.3 3.3.1 3.4 3.4.1 3.4.2 3.4 - FUNCTIONAL DEFICIENCIES SUMMARY LIST Discrepancy Memory Memory Corruption when passing Null Ptr to temuxDPR Device Driver Compiler Function prototype sysTemuxDPRTask - declaration missing Function prototype temuxLoopx23 - declaration discrepancy STM_DPV struct - declaration missing Added Functions TemuxSBITribReset function added to perform configuration reset on SBI bus on Overrun or Underrun status Device Driver ISR Incorrect Indexing of ISV Improper notification of SIGX COSS interrupts TemuxDPR Workaround Use default implementation Yes - code addition Yes - code edit Yes - code edit Function added in next release of software driver Yes - code edit Yes - code edit PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 2 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX # 3.4.1 Discrepancy ISV Buffer received but never freed Workaround Yes - code edit PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 3 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX 3 3.1 TEMUX DEVICE DRIVER FUNCTIONAL DEFICIENCY DETAILS Memory 3.1.1 Memory Corruption When Passing a Null Ptr to temuxDPR API Description Passing a Null to temuxDPR may cause memory corruption. Workaround There are two methods for implementation of the ISR/DPR chain. The default method requires the Application to: Call sysTemuxISVBufferGet() to get a new buffer Pass that buffer to temuxISR() for processing SEND the buffer to the DPR Task RECEIVE the buffer and pass it as a parameter to temuxDPR() The alternate implementation of the ISR/DPR chain requires the Application to: call temuxISR() with a NULL buffer pointer (temuxISR() automatically SENDs the buffer) call temuxDPR() from within the DPR Task with a NULL buffer pointer (temuxDPR() automatically RECEIVEs the buffer) The default implementation works. The workaround for this errata is to use the default method, not the alternate method. Performance Without Workaround If the Application uses the alternate implementation, the driver will use a random memory address as if it were an ISV buffer pointer, thereby corrupting memory or crashing the driver. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 4 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX 3.2 Declarations 3.2.1 Function Prototype sysTemuxDPRTask Description Function prototype extern sysTemuxDPRTask does not have a corresponding declaration. Workaround In the file tmx_rtos.c, add the following declaration: extern void sysTemuxDPRTask (void); Performance Without Workaround This is a compiler issue only. 3.2.2 Function prototype temuxLoopMX23 Description Function prototype extern INT4 temuxLoopMX23 (sTMX_HNDL, UINT2, UINT2, BOOLEAN) differs from declaration INT4 temuxLoopMX23(sTMX_HNDL devId,UINT2 mxNum, UINT2 up, UINT2 ais). PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 5 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX Workaround In the files tmx_dpr.c and tmx_api.h, change the function declaration from: INT4 temuxLoopMX23 (sTMX_HNDL devId, UINT2 mxNum, UINT2 up, UINT2 ais) to: INT4 temuxLoopMX23 (sTMX_HNDL devId, UINT2 mxNum, UINT2 up, BOOLEAN ais) Performance Without Workaround This is a compiler issue only. 3.2.3 STMX_DPV struct Description TEMUX driver is missing the declaration of the sTMX_DPV structure. Workaround In the file tmx_dpr.h, make a copy of the structure sTMX_DPV_IO and rename all of the elements in one of the copies to sTMX_DPV (as shown below) struct tmx_dpv { UINT4 data; UINT4 channels; }; typedef struct tmx_dpv sTMX_DPV; Performance Without Workaround This is a compiler issue only. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 6 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX 3.3 Added Functions 3.3.1 TemuxSBITribReset Description When a Tributary on the Insert SBI bus goes into Overrun or Underrun status, the configuration must be reset. Workarounds An API function temuxSBITribReset() has been added to the next release of the software driver which performs a configuration reset on the Insert SBI Bus Tributary. The USER of the driver must call this routine when an Overrun or Underrun occurs on an Insert SBI Bus Tributary. Performance Without Workaround Without the new function or if the Application fails to call the function when an overrun or underrun occurs, the SBI Insert link will lock up. 3.4 Temux Device Driver ISR 3.4.1 Incorrect Indexing of ISV Description In coreISR() in tmx_isr.c, the framer array member of the ISV is not indexed correctly. It is indexed from 0 to 27 instead of 1 through 28. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 7 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX Workaround In the file tmx_isr.c, in the coreISR(), change the following lines: chanNum = 0x00; while (channels || (polling && chanNum < NUM_T1)) to: chanNum = 0x01; while (channels || (polling && chanNum <= NUM_T1)) Performance Without Workaround The incorrect indexing causes information to be interpreted as coming from the wrong Tributary. 3.4.2 Improper Notification of SIGX COSS Interrupts Description In coreISR() in tmx_isr.c, when populating the ISV for SIGX COSS interrupts a logical OR operator is used where a binary OR operator is required. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 8 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX Workarounds In the file tmx_isr.c, in the coreISR(), change the following lines: pISV->framer[index].sigx.coss = ( ((sysTemuxReadReg(TMX_FR_SIGX_CFG(base,chanNum)) & 0x3F) << 24) || ((sysTemuxReadReg(TMX_FR_SIGX_STAT(base,chanNum)) & 0xFF) << 16) || ((sysTemuxReadReg(TMX_FR_SIGX_ADDR(base,chanNum)) & 0xFF) << 8) || ((sysTemuxReadReg(TMX_FR_SIGX_DATA(base,chanNum)) & 0xFF) )); to: pISV->framer[index].sigx.coss = ( ((sysTemuxReadReg(TMX_FR_SIGX_CFG(base,chanNum)) & 0x3F) << 24) | ((sysTemuxReadReg(TMX_FR_SIGX_STAT(base,chanNum)) & 0xFF) << 16) | ((sysTemuxReadReg(TMX_FR_SIGX_ADDR(base,chanNum)) & 0xFF) << 8) | ((sysTemuxReadReg(TMX_FR_SIGX_DATA(base,chanNum)) & 0xFF) )); Performance Without Workaround This causes the USER to not receive proper notification of SIGX COSS interrupts. 3.5 TemuxDPR 3.5.1 ISV Buffer Received But Never Freed Description In file tmx_dpr.c function coreDPR(): ISV buffer received, but never freed. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 9 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX Workarounds In the file tmx_dpr.c, in the coreDPR(), change the final line: return TMX_OK; to: if (pBuf == NULL) sysTemuxISVBufferRtn(pISV); return TMX_OK; Performance Without Workaround Without the added line of code, the Driver would eventually exhaust the supply of buffers and the DPR callbacks would cease. PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 10 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX NOTES PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE 11 TEMUX DEVICE DRIVER ERRATA PMC-2001481 ISSUE 1 PM8315 TEMUX HIGH DENSITY T1/E1 FRAMER WITH INTEGRATED VT/TU MAPPER AND M13 MUX CONTACTING PMC-SIERRA, INC. PMC-Sierra, Inc. 105-8555 Baxter Place Burnaby, BC Canada V5A 4V7 Tel: Fax: (604) 415-6000 (604) 415-6200 document@pmc-sierra.com info@pmc-sierra.com apps@pmc-sierra.com (604) 415-4533 http://www.pmc-sierra.com Document Information: Corporate Information: Application Information: Web Site: None of the information contained in this document constitutes an express or implied warranty by PMC-Sierra, Inc. as to the sufficiency, fitness or suitability for a particular purpose of any such information or the fitness, or suitability for a particular purpose, merchantability, performance, compatibility with other parts or systems, of any of the products of PMC-Sierra, Inc., or any portion thereof, referred to in this document. PMC-Sierra, Inc. expressly disclaims all representations and warranties of any kind regarding the contents or use of the information, including, but not limited to, express and implied warranties of accuracy, completeness, merchantability, fitness for a particular use, or non-infringement. In no event will PMC-Sierra, Inc. be liable for any direct, indirect, special, incidental or consequential damages, including, but not limited to, lost profits, lost business or lost data resulting from any use of or reliance upon the information, whether or not PMC-Sierra, Inc. has been advised of the possibility of such damage. (c) 2000 PMC-Sierra, Inc. PMC-2001481 (R1) Issue date: October 2000 PROPRIETARY AND CONFIDENTIAL TO PMC-SIERRA, INC., AND FOR ITS CUSTOMERS' INTERNAL USE |
Price & Availability of 2001481 |
|
|
All Rights Reserved © IC-ON-LINE 2003 - 2022 |
[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy] |
Mirror Sites : [www.datasheet.hk]
[www.maxim4u.com] [www.ic-on-line.cn]
[www.ic-on-line.com] [www.ic-on-line.net]
[www.alldatasheet.com.cn]
[www.gdcy.com]
[www.gdcy.net] |